// pages/login/phone-login/phone-login.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    phone:17704051019,
    vcode:"",
    tip:"获取验证码",//提示文字
    timer:null,//倒计时的定时器
    conut:10,//倒计时总秒数，这是设置10是为了方便测试
    isCountDown:false,//是否正在倒计时
  },
 /*  // 手机号input双向绑定事件
  changePhone(e){
    this.setData({
      phone:e.detail.value
    })
  },
   // 验证码input双向绑定事件
   changeVcode(e){
    this.setData({
      vcode:e.detail.value
    })
  } */
  // 全局双向绑定事件
  changeSet(e){
    this.setData({
      [e.target.dataset.name]:e.detail.value
    })
  },

  // 点击获取验证码发送请求
 async getVcode(){
    //1.手机号校验
    const reg=/^1[3-9][0-9]{9}$/
    if(!reg.test(this.data.phone)){
      wx.showToast({
        title: '手机号格式不正确',
        icon:"none",
        duration:1500,
      })
      return
    }

    //2.实现倒计时功能
    //2.1 判断是否有正在倒计时，如果有，则return
    if(this.data.isCountDown) return

    //2.2点击的那一刻显示倒计时的总秒数
    this.setData({
      isCountDown:true,
      tip:`${this.data.conut}`
    })
    
    //2.3开启定时器，进行倒计时处理
    this.data.timer=setInterval(()=>{
      //2.3.1如果已经倒计时到1，那么久结束倒计时，重置数据
      if(this.data.conut<=1){
        clearInterval(this.data.timer)
        this.data.conut=10
        this.setData({
          tip:"获取验证码",
          isCountDown:false, 
        })
        //阻止代码继续往下执行
        return
      }
      // 2.3.2 正常倒计时
      this.data.conut--;
      this.setData({
        tip:`${this.data.conut}`
      })
    },1000)

    //3.发请求，根据手机号获取验证码
    const res= await wx.$request({
      url:"user/vcode",
      data:{
        phone:this.data.phone
      }
    })
    if(res.status===0){
      this.setData({
        vcode:res.vcode
      })
    }

  },
  //手机号登陆
  async phoneLogin(){
   
    const res =await wx.$request({
      url:"user/login",
      method:"POST",
      data:{
        phone:this.data.phone,
        vcode:this.data.vcode
      }
    })
    console.log(res);
    if(res.status===0){
      //保存token
      wx.setStorageSync('token', res.token)
      //提示，并且1秒后跳转到首页
      wx.showToast({
        title:res.message ,
        duration:1000,
        success:()=>{
          wx.reLaunch({
            url: '/pages/home/home',
          })
        }
      })
    }else{
      wx.showToast({
        title: res.message,
        duration:1000,
        icon:"none"
      })
    }

  },
  onUnload:function(){
    //页面销毁时执行消除定时器
    clearInterval(this.data.timer)
  }
})